home *** CD-ROM | disk | FTP | other *** search
/ Amiga Tools 5 / Amiga Tools 5.iso / grafik / 3d & render tools / irit / contrib / scripts / cupglass.irt < prev    next >
Encoding:
Text File  |  1996-07-16  |  1.7 KB  |  73 lines

  1. glass_color = white;
  2.  
  3. #    Creating walls...
  4.  
  5. pnt1 = ctlpt (E3, 0.15, 0, 0);
  6. pnt2 = ctlpt (E3, 0.25, 0, 0.05);
  7. pnt3 = ctlpt (E3, 0.35, 0, 0.15);
  8. pnt4 = ctlpt (E3, 0.4, 0, 0.3);
  9. pnt5 = ctlpt (E3, 0.4, 0, 0.4);
  10.  
  11. gside = cbezier ( list ( pnt1, pnt2, pnt3, pnt4, pnt5 ) );
  12. gwalls = surfprev ( gside );
  13. color ( gwalls, glass_color );
  14.  
  15. #    Creating inside walls...
  16.  
  17. delta = 0.01;
  18. pnt12 = ctlpt (E3, 0.15, 0, 0+delta);
  19. pnt22 = ctlpt (E3, 0.25-delta, 0, 0.05+delta);
  20. pnt32 = ctlpt (E3, 0.35-delta, 0, 0.15+delta);
  21. pnt42 = ctlpt (E3, 0.4-delta, 0, 0.3);
  22. pnt52 = ctlpt (E3, 0.4-delta, 0, 0.4);
  23.  
  24. gside2 = cbezier ( list ( pnt52, pnt42, pnt32, pnt22, pnt12 ) );
  25. gwalls2 = surfprev ( gside2 );
  26.  
  27. color ( gwalls2, glass_color );
  28.  
  29. # attrib ( gwalls2, "rgb", "255,255,255" );
  30.  
  31. #    Creating bottom
  32.  
  33. gbottom = cylin ( vector(0,0,0), vector(0,0,delta), 0.152 );
  34. color ( gbottom, glass_color );
  35. # attrib ( gbottom, "rgb", "255,255,255" );
  36.  
  37. #    Creating upper side
  38. gupseg = cbezier ( list ( pnt5, pnt52 ) );
  39. gup = surfprev ( gupseg );
  40. color ( gup, glass_color );
  41. attrib ( gup, "rgb", "255,255,255" );
  42.  
  43. #    Creating handle
  44. pt1 = ctlpt (E3, 0.25, 0, 0.1);
  45. pt2 = ctlpt (E3, 0.35, 0, 0.08);
  46. pt3 = ctlpt (E3, 0.45, 0, 0.14);
  47. pt4 = ctlpt (E3, 0.48, 0, 0.25);
  48. pt5 = ctlpt (E3, 0.35, 0, 0.3);
  49.  
  50. cross_sect = circle(vector(0,0,0),0.05) * scale ( Vector ( 1/2, 1, 1 ) );
  51.  
  52. hc = cbezier ( list(pt1,pt2,pt3,pt4,pt5) );
  53.  
  54. tmp = sweepsrf ( cross_sect, hc, OFF );
  55.  
  56. handle = tmp - gwalls;
  57. color ( handle, glass_color );
  58.  
  59. # view ( handle , true );
  60.  
  61. #    Creating the glass itself...
  62. glass = list ( gwalls, gwalls2, gbottom, gup, handle );
  63.  
  64. # glass = list ( gwalls, gbottom, gup, handle );
  65.  
  66. #interact ( glass );
  67.  
  68. # view ( glass, true );
  69.  
  70. #    Saving...
  71. # save ( "glass.dat", list ( view_mat, glass ) );
  72. #exit();
  73.